function liefereKugelAb()
%LIEFEREKUGELAB legt die Kugel am Rand ab

global x_Position;
global y_Position;

%% alte Richtung zwischenspeichern
TempDirection = getdirection();

%% Kugel Greifen
greifer_close();

%%zum Start zurückkehren
return2start();


%% Kugel weiter schieben um sie beim zurückdrehen nicht mitzunehmen
engine_forwards(100,false);

%% Kugel liegen lassen
greifer_open();

%% zur Ausgangssituation zurückkehren
engine_backwards(100,true);

%%jetzt müsste der Roboter noch zu Ausgangsposition zurückkeheren

%%wieder umdrehen
engine_right();
engine_right();

%% Motor starten
engine_forwards();

%% solange die alte x_Position noch nicht erreicht wurde weiter bewegen
while (-distance_get() > x_Position)
	pause(0.1);
end

%% alte x-Position erreicht -> Motoren stoppen
engine_stop();

%% in y-Richtung drehen
engine_left();

%% Motor starten
engine_forwards();

%% solange alte y-Position noch nicht erreicht weiter fahrn
while (y_Position < -distance_get())
	pause(0.1);
end

%% alte y-Position erreicht -> Motoren stoppen
engine_stop();

%% solange die aktuelle Richtung noch nicht der alten richtung ist weiter drehen
while( getdirection() != TempDirection ) %% hier muss wohl noch strcmp hin muss grad aber zum Zug..
	engine_left();
end

end
